
//-Wmaybe-uninitialized
//    For an automatic variable, if there exists a path from the function entry to a use of the variable that is initialized, but there exist some other paths the variable is not initialized, the compiler will emit a warning if it can not prove the uninitialized paths do not happen at run time. These warnings are made optional because GCC is not smart enough to see all the reasons why the code might be correct despite appearing to have an error. Here is one example of how this can happen:


static int func ( int y )
{
	int x;

	if ( y == 0 )
		x = 8;

	return x;
}

int main ( void )
{
	int z = func ( 9 );
	z++;

	return z;
}
